package com.wyl.niupi.framework.mybatisPlusExt;

import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.wyl.niupi.yxc.entity.YxcGoods;
import org.apache.commons.lang3.StringUtils;

import java.util.Arrays;
import java.util.List;

/**
 * 格式：groupBy_字段1，字段2
 * @author 吴宇亮 on 2020/6/6 11:26
 */
public class GroupBy {

    public static final String NAME = "groupby";

    /**
     * 生动根据请求参数，生成groupBy条件，示例：roupBy_name1,name2,name3... <br/>
     *
     * @param key 请求参数
     * @param queryWrapper 过滤器
     * @param <T> entity实体类型
     */
    public static <T> void autoFilter(String key, QueryWrapper<T> queryWrapper) {
        String[] arr = key.split("_");
        if(arr.length != 2){
            return; //不符合自动过滤的规则
        }
        String fieldName = arr[1];
        if(StringUtils.isAnyBlank(fieldName)){
            return;
        }
        queryWrapper.groupBy(fieldName.split(","));
    }

}
